The present invention relates generally to network communication. More particularly, the present invention relates to maintenance of location privacy during network access through IP address space scrambling.
Internet Protocol (IP) allows any hosts on an IP network to have end-to-end communication between them if they know each other's IP address. An IP network generally includes one or more switches or routers and two or more hosts. The hosts communicate over a wire line or wireless link with a router. Routers similarly communicate with other routers and hosts. Generally, all communication is by internet protocol.
Each IP message consists of one or more IP packets. Header information in the IP packets identifies the sender, the recipient and allows the entire IP message to be reconstructed from the IP packets. The IP packets are independent and discrete and may not be routed from sender to receiver over the same path in the network. In an IP network, a sender can send IP packets to a receiver by setting a destination IP address in the IP packet header to the IP address of the intended receiver. Once the packet is injected in the IP network, routing mechanisms try to deliver the packet to the destination host.
The information contained in the Destination IP Address field of an IP packet is what enables the routing mechanism of the network to deliver the IP packet to its intended recipient. An IP address is structured in a Prefix-Suffix format. The prefix part of the IP address contains the subnet-prefix of the destination subnet, indicating where the packet ought to go. Routers make routing decisions, such as selection of the link on which the packet needs to be sent, by looking at the destination subnet prefix contained in the IP address and matching it against a routing table maintained at each router. There are a large number of routing protocols in use in different parts of the Internet such as RIP, OSPF, and BGP etc, which are used for communication among routers and for building valid and up to date routing tables.
Currently, matching the destination subnet prefix from the destination IP address against the routing table is a very simple process. A router applies a mask function on the IP address to obtain the prefix and then searches in the routing table for the entry with longest match to this prefix. Once the entry is found, the packet is routed or sent out on the link described in that routing table entry.
While the inherent simplicity of this process allows the routers to process packets very quickly, and enables them to handle large amounts of traffic, it also creates some potential problems. These problems are becoming more and more important and significant as networks including the Internet become a primary means of communication.
One such problem is location privacy. This problem stems from the fact that most of the subnets, especially stub-subnets, usually have a fixed association with a fairly small geographical area. Due to the fixed nature of this association, a fairly accurate database of subnet-prefix-to-location mappings may be built. Thus, the user loses a substantial portion of the user's location privacy. It is possible to identify the geographic location of the user, even when that location is changing over time because the user is geographically mobile.
As noted, internet protocol requires hosts to know each other's IP addresses for true end-to-end communication in the network. In other words, a host cannot communicate with other host in end-to-end fashion without actually revealing its location. This is because inferring a subnet-prefix from a given IP address is extremely easy, and subnet-prefixes correspond to geographical locations.
Accordingly, a need exists to solve the above mentioned location privacy problem.